1. Field of the Invention
The present invention relates generally to a method and apparatus for authenticating a Non-Volatile Memory (NVM) device.
2. Description of the Related Art
To protect content, techniques such as Digital Rights Management (DRM), copy protection, etc., are used. Other techniques authenticate memory devices including an NVM device, such as a Solid State Disk (SSD), a flash memory card, a Secure Digital (SD) card, a MultiMedia Card (MMC), or a Universal Serial Bus (USB) device.
Although DRM, Content Protection for Recordable Media (CPRM) for SD cards, and Advanced Access Content System (AACS) for blue-ray disks provide device authentication methods based on Public Key Infrastructure (PKI) or other cryptographic technologies, these techniques cannot protect against attacks such as duplication of a memory device or authentication of an unauthorized storage medium by a legitimate player.
For device authentication methods based on CPRM or AACS, an IDentifier (ID) is stored in a read-only area of a storage medium during fabrication of the storage medium. The stored ID is then used for device authentication and content protection through an encryption scheme. A major drawback with these types of device authentication methods is that illegal hardware manufacturers can easily clone a number of authenticated devices.
However, there is no specified conventional method for allowing a host device to directly authenticate an NVM device. Accordingly, a controller performs an Error Correction Code (ECC) function and a medium authentication function for an NVM device, which passively provides a data storage space.
FIG. 1 is a block diagram illustrating a conventional host device and medium device, which performs medium authentication using a controller.
Referring to FIG. 1, a conventional medium device 20 includes an NVM device 22 that stores information and a controller 21, which inputs and outputs data to and from the NVM device 22 and controls the NVM device 22. Accordingly, the controller 21 controls an ECC function for the NVM device 22. A host device 10, which uses the medium device 20, performs medium authentication on the medium device 20 through an authentication verification module 11. The controller 21 includes a Flash Translation Layer (FTL), the ECC module, and a security module.
However, especially as the integration of a flash memory has increased from a cell being able to store 1 bit (a single-level cell), 2 bits (a multi-level cell), and then 3 bits (a triple-level cell), many more errors are generated. In this context, robust ECC performance is required. Nonetheless, most current memory devices rely on separate a controller for the ECC function, and inclusion of the ECC function in NVM devices as an authentication mechanism may significantly increase production costs.